<html>

	<head>
		<title>4.4 Clear</title>
		<meta charset="utf-8" />
		<meta name="author" content="jfinal,yaolin" />
		<meta name="Keywords" content="" />
		<link rel="stylesheet" type="text/css" href="../../css/global.css" />
	</head>

	<body>
		<h1>4.4 Clear</h1>
		<p>拦截器从上到下依次分为 Global、 Inject、 Class、 Method 四个层次， Clear 用于清除<span class="red">自身所处层次以上层</span>的拦截器。
		</p>
		<p>Clear 声明在 Method 层时将针对 Global、 Inject、 Class 进行清除。 Clear 声明在 Class 层时 将针对 Global、 Inject 进行清除。 Clear 注解携带参数时清除目标层中指定的拦截器。
		</p>
		<p class="red">Clear 用法记忆技巧：</p>
		<ul>
			<li>共有 Global、 Inject、 Class、 Method 四层拦截器</li>
			<li>清除只针对 Clear 本身所处层的向上所有层，本层与下层不清除</li>
			<li>不带参数时清除所有拦截器，带参时清除参数指定的拦截器</li>
		</ul>
		<p>在某些应用场景之下， 需要移除 Global 或 Class 拦截器。 例如某个后台管理系统，配置了 一个全局的权限拦截器，但是其登录 action 就必须清除掉她，否则无法完成登录操作，以下是代码示例：</p>
		<img src="../../images/aop/4.4.1.png" />
		<p>Clear 注解带有参数时， 能清除指定的拦截器，以下是一个更加全面的示例：</p>
		<img src="../../images/aop/4.4.2.png" />
	</body>

</html>